﻿using System;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Collections;
using System.Drawing;
using System.Linq;
using System.Workflow.ComponentModel.Compiler;
using System.Workflow.ComponentModel.Serialization;
using System.Workflow.ComponentModel;
using System.Workflow.ComponentModel.Design;
using System.Workflow.Runtime;
using System.Workflow.Activities;
using System.Workflow.Activities.Rules;

namespace Lisphi.Lab.ProfWFChap06
{
	public sealed partial class Workflow1: SequentialWorkflowActivity
	{
        public static DependencyProperty WorkflowName1Property = System.Workflow.ComponentModel.DependencyProperty.Register("WorkflowName1", typeof(string), typeof(Workflow1));

		public Workflow1()
		{
			InitializeComponent();
		}

        public string WorkflowName1
        {
            get
            {
                return ((string)(base.GetValue(Workflow1.WorkflowName1Property)));
            }
            set
            {
                base.SetValue(Workflow1.WorkflowName1Property, value);
            }
        }

        public string WorkflowName2 { get; set; }

        private void executeBeforeDelay(object sender, EventArgs e)
        {
            
        }

        private void executeAfterDelay(object sender, EventArgs e)
        {
            
        }

        private void delay5Seconds_Initialize(object sender, EventArgs e)
        {
            Console.WriteLine(string.Format("delay5Seconds_Initialize @{0}", DateTime.Now));
        }

        private void BeforeDelay_ExecuteCode(object sender, EventArgs e)
        {
            Console.WriteLine(string.Format("BeforeDelay_ExecuteCode @{0}", DateTime.Now));
        }

        private void AfterDelay_ExecuteCode(object sender, EventArgs e)
        {
            Console.WriteLine(string.Format("AfterDelay_ExecuteCode @{0}", DateTime.Now));
        }

        private void Delay5Seconds_InitializeTimeoutDuration(object sender, EventArgs e)
        {
            Console.WriteLine(string.Format("Delay5Seconds_InitializeTimeoutDuration @{0}", DateTime.Now));
        }

        private void Child1_ExecuteCode(object sender, EventArgs e)
        {
            Console.WriteLine(string.Format("Child1_ExecuteCode @{0}", DateTime.Now));
        }
	}
}
